package org.madmac.setor;

import java.sql.SQLException;

import org.madmac.exception.CampoNaoInformadoException;

public class SetorBo {

	private static SetorBo instance;

	private SetorBo() {
	}

	public static SetorBo getInstance() {

		if (instance == null) {
			instance = new SetorBo();
		}

		return instance;
	}

	public Integer validateAndCreate(Setor setor) throws CampoNaoInformadoException, SQLException, ClassNotFoundException, Exception {

		if (setor.getNome() == null || setor.getNome().isEmpty()) {
			throw new CampoNaoInformadoException("O campo Nome da Sala está vazio.");
		}

		return (Integer) SetorDao.getInstance().create(setor);
	}

	public boolean updateSetorBO(Setor setor, int up_code_setor) throws CampoNaoInformadoException, SQLException, ClassNotFoundException, Exception {

		if (setor.getNome() == null || setor.getNome().isEmpty()) {
			throw new CampoNaoInformadoException("O campo Nome do Setor está vazio.");
		} else if (setor.getRamal() == 0) {
			throw new CampoNaoInformadoException("O campo Ramal está vazio.");
		} else if (setor.getRamal() < 1000) {
			throw new CampoNaoInformadoException("O campo Ramal está incorreto. Deve ter 4 dígitos.");
		}

		return SetorDao.getInstance().updateSala(setor, up_code_setor);

	}
}
